home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 26 / AACD 26.iso / AACD / Graphics / sKulpt / skulpt-src / windows.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-08-30  |  9.0 KB  |  349 lines

  1. #ifndef _WINDOWS_H_
  2. #define _WINDOWS_H_
  3.  
  4. #include <dos/dos.h>
  5.  
  6. //#include <intuition/IntuitionBase.h>
  7. #include <intuition/intuition.h>
  8. #include <intuition/icclass.h>
  9. #include <intuition/imageclass.h>
  10.  
  11. #include <datatypes/datatypesclass.h>
  12. #include <datatypes/pictureclass.h>
  13.  
  14. #include <libraries/amigaguide.h>
  15. #include <libraries/gadtools.h>
  16.  
  17. #include <graphics/gfxmacros.h>
  18.  
  19. #include <workbench/icon.h>
  20.  
  21. #include <clib/exec_protos.h>
  22. #include <clib/dos_protos.h>
  23. #include <clib/intuition_protos.h>
  24. #include <clib/asl_protos.h>
  25. #include <clib/graphics_protos.h>
  26. #include <clib/gadtools_protos.h>
  27. #include <clib/layers_protos.h>
  28. #include <clib/amigaguide_protos.h>
  29. #include <clib/datatypes_protos.h>
  30. #include <clib/utility_protos.h>
  31. #include <clib/alib_protos.h>
  32. #include <clib/icon_protos.h>
  33.  
  34. #include <proto/Warp3D.h>
  35.  
  36. #include <cybergraphx/cybergraphics.h>
  37. #include <clib/cybergraphics_protos.h>
  38. #ifndef __PPC__
  39. #include <pragma/cybergraphics_lib.h>
  40. #endif
  41.  
  42. typedef int DDCAPS;
  43. typedef float FLOAT;
  44. typedef unsigned int DWORD;
  45. typedef long LONG;
  46. typedef void *LPVOID;
  47. typedef short SHORT;
  48. typedef int HRESULT;
  49. typedef char TCHAR;
  50. typedef char D3DDEVICEDESC7;
  51. typedef struct BitMap *HBITMAP;
  52. typedef struct RastPort DC;
  53. typedef DC *HDC;
  54. typedef char HBRUSH;
  55. typedef char HFONT;
  56. typedef Screen * HINSTANCE;
  57. typedef char LPDIRECT3D7;
  58. typedef char LPDIRECTDRAWSURFACE7;
  59. typedef char LPDDSURFACEDESC;
  60. typedef short HANDLE;
  61. typedef char GUID;
  62. typedef Window * HWND;
  63. typedef char LRESULT;
  64. typedef unsigned int UINT;
  65. typedef short WPARAM;
  66. typedef long LPARAM;
  67. typedef char *LPSTR;
  68. typedef int MSG;
  69. typedef char *HKEY;
  70. typedef int HPEN;
  71. typedef int HMENU;
  72. typedef Point POINT;
  73. typedef char *LPCTSTR;
  74. typedef void *DLGPROC;
  75. typedef Object GDIOBJ;
  76. typedef GDIOBJ *HGDIOBJ;
  77.  
  78. #define inline
  79. #define FAILED(a) (a)
  80.  
  81. #define max(a,b) (a>b?a:b)
  82. #define min(a,b) (a>b?b:a)
  83. #define S_OK 0
  84. #define E_FAIL 1
  85. #define CALLBACK
  86. #define TRUE 1
  87. #define FALSE 0
  88. #define APIENTRY
  89. #define WINAPI
  90. #define DDPF_ZBUFFER 0
  91. #include <string.h>
  92. #define ZeroMemory(a,b) memset(a,0, b)
  93. #define _T(a) a
  94. #define HKEY_LOCAL_MACHINE "sk.ini"
  95. #define KEY_READ 1
  96. LONG RegOpenKeyEx(char *s, char *, int, int, char **);
  97. LONG RegQueryValueEx(HKEY, char *, int, DWORD *, char *, DWORD *);
  98. VOID RegCloseKey(HKEY);
  99. #define lstrcat strcat
  100. #define ERROR_SUCCESS 0
  101. #define FLT_MAX 1.0e10f
  102. #define E_INVALIDARG 1
  103. #define cosf cos
  104. #define sinf sin
  105. #define acosf acos
  106. #define sqrtf sqrt
  107. #define wsprintf sprintf
  108. #define OutputDebugString printf
  109. #define DDENUMRET_CANCEL 1
  110. #define DDENUMRET_OK 0
  111. #define SUCCEEDED(a) (a)
  112.  
  113. #define WM_CREATE            1
  114. #define WM_MOVE                2
  115. #define WM_PAINT            3
  116. #define WM_SIZE                4
  117. #define WM_CHAR                5
  118. #define WM_GETMINMAXINFO    6
  119. #define WM_CLOSE            7
  120. #define WM_DESTROY            8
  121. #define WM_LBUTTONDOWN        9
  122. #define WM_MOUSEMOVE        10
  123. #define WM_LBUTTONDBLCLK    11
  124. #define WM_COMMAND            12
  125. #define WM_LBUTTONUP        13
  126. #define MK_BUTTON            14
  127. #define MK_SHIFT            15
  128. #define MK_CONTROL          16
  129. #define MK_RBUTTON          17
  130. #define MK_MBUTTON          18
  131. #define WM_DISPLAYCHANGE    19
  132. #define WM_SETTEXT          20
  133. #define WM_NCLBUTTONDBLCLK  21
  134. #define WM_USER             1024
  135.  
  136. #define SW_HIDE 0
  137. #define SW_SHOWMAXIMIZED    1
  138. #define SW_SHOWNA   2
  139. #define SW_MAXIMIZE 3
  140.  
  141. /*
  142.  * Button Control Styles
  143.  */
  144. #define BS_PUSHBUTTON       0x00000000L
  145. #define BS_DEFPUSHBUTTON    0x00000001L
  146. #define BS_CHECKBOX         0x00000002L
  147. #define BS_AUTOCHECKBOX     0x00000003L
  148. #define BS_RADIOBUTTON      0x00000004L
  149. #define BS_3STATE           0x00000005L
  150. #define BS_AUTO3STATE       0x00000006L
  151. #define BS_GROUPBOX         0x00000007L
  152. #define BS_USERBUTTON       0x00000008L
  153. #define BS_AUTORADIOBUTTON  0x00000009L
  154. #define BS_OWNERDRAW        0x0000000BL
  155. #define BS_LEFTTEXT         0x00000020L
  156. #define BS_TEXT             0x00000000L
  157. #define BS_ICON             0x00000040L
  158. #define BS_BITMAP           0x00000080L
  159. #define BS_LEFT             0x00000100L
  160. #define BS_RIGHT            0x00000200L
  161. #define BS_CENTER           0x00000300L
  162. #define BS_TOP              0x00000400L
  163. #define BS_BOTTOM           0x00000800L
  164. #define BS_VCENTER          0x00000C00L
  165. #define BS_PUSHLIKE         0x00001000L
  166. #define BS_MULTILINE        0x00002000L
  167. #define BS_NOTIFY           0x00004000L
  168. #define BS_FLAT             0x00008000L
  169. #define BS_RIGHTBUTTON      BS_LEFTTEXT
  170.  
  171. #define MAKEINTRESOURCE(a) ((LPCTSTR) a)
  172. #define GWL_USERDATA    2048
  173. #define FW_BOLD 0
  174. #define ANSI_CHARSET 0
  175. #define OUT_DEFAULT_PRECIS 0
  176. #define CLIP_DEFAULT_PRECIS 0
  177. #define DEFAULT_QUALITY 0
  178. #define VARIABLE_PITCH 0
  179. #define TRANSPARENT 0
  180. #define SRCCOPY 0
  181. #define PS_SOLID 0
  182. #define LOWORD(a) (a & 0xFFFF)
  183. #define HIWORD(a) (a >> 16)
  184. #define PAINTSTRUCT char
  185. #define SIZE_MAXHIDE 0
  186. #define SIZE_MINIMIZED 1
  187. #define COLORREF D3DCOLOR
  188. #define HORZRES 1
  189. #define VERTRES 2
  190. #define MF_BYCOMMAND 1
  191. #define MF_CHECKED 2
  192. #define MF_UNCHECKED 3
  193. #define D3DX_DEFAULT 0
  194. #define DDSD_CAPS 1
  195. #define DDSCAPS_PRIMARYSURFACE 1
  196. #define DDSCL_NORMAL 1
  197. #define DDSD_WIDTH 1
  198. #define DDSD_HEIGHT 2
  199. #define DDSCAPS_OFFSCREENPLAIN 3
  200. #define DDSCAPS_3DDEVICE 4
  201. #define DDSD_PIXELFORMAT 5
  202. #define DDSCAPS_ZBUFFER 6
  203. #define DDSCAPS_VIDEOMEMORY 7
  204. #define DDSCAPS_SYSTEMMEMORY 8
  205. #define DS_SETFONT 0x40L
  206.  
  207. #define DeleteObject    ReleasePen
  208.  
  209. typedef struct
  210.     {
  211.         LONG left;
  212.         LONG top;
  213.         LONG right;
  214.         LONG bottom;
  215.     } RECT;  // Structure équivalente à Rect32 Amiga
  216.  
  217. typedef struct
  218.     {
  219.         int x;
  220.         int y;
  221.         POINT ptMinTrackSize;
  222.     } MINMAXINFO;
  223.  
  224. typedef struct
  225.     {
  226.         DWORD dwCaps;
  227.     } DDSURFACECAPS;
  228.  
  229. typedef struct
  230.     {
  231.         DWORD dwSize;
  232.     } PIXELFORMAT;
  233.     
  234. typedef struct
  235.     {
  236.         DWORD dwSize;
  237.         DWORD dwFlags;
  238.         DDSURFACECAPS ddsCaps;
  239.         PIXELFORMAT ddpfPixelFormat;
  240.     } DDSURFACEDESC2;
  241.         
  242. typedef struct
  243.     {
  244.         DWORD dwFlags;
  245.         DWORD dwZBufferBitDepth;
  246. } DDPIXELFORMAT;
  247. #define LPDDPIXELFORMAT DDPIXELFORMAT *
  248.  
  249. typedef struct
  250.     {
  251.         int *SetRenderState(int a, int b);
  252.         int *SetTransform(int a, void *b);
  253.         int *Clear(int a, int b, int c, int d, float e, int f);
  254.         int *BeginScene(void);
  255.         int *SetMaterial(void *a);
  256.         int *DrawPrimitive(int a, int b, void *c, int d, int e);
  257.         int *EndScene(void);
  258.         int *SetLight(int a, void *b);
  259.         int *LightEnable(int a, BOOL b);
  260.         int QueryInterface(int, void *);
  261.     } DIRECT3DDEVICE7;
  262. #define LPDIRECT3DDEVICE7 DIRECT3DDEVICE7 *
  263.  
  264. typedef struct
  265.     {
  266.         int QueryInterface(int, void *);
  267.         int SetCooperativeLevel(HWND, int);
  268.     } DIRECTDRAW7;
  269. #define LPDIRECTDRAW7 DIRECTDRAW7 *
  270.  
  271. #define DDLOCK_SURFACEMEMORYPTR 0
  272. typedef struct
  273.     {
  274.         int *GetVertexBufferDesc(void *);
  275.         int *Lock(int a, void **b, void *c);
  276.         int *Unlock(void);
  277.         int *Release(void);
  278.     } DIRECT3DVERTEXBUFFER7;
  279. #define LPDIRECT3DVERTEXBUFFER7 DIRECT3DVERTEXBUFFER7 *
  280.  
  281. typedef struct
  282.     {
  283.         int *Draw(void);
  284.         int *Release(void);
  285.         LPDIRECT3DVERTEXBUFFER7 GetVB(void);
  286.     } ID3DXSimpleShape;
  287.     
  288. int PostMessage(HWND, int, WPARAM, LPARAM);
  289. #define SendMessage PostMessage
  290.  
  291. struct RastPort *GetDC(HWND);
  292. BOOL ExtTextOut(HDC hdc,int X,int Y, int fuOptions, RECT *lprc, char *lpString, int cbCount, int *lpDx);
  293. BOOL PtInRect(RECT *rRect, POINT pPoint);
  294. void GetClientRect(HWND hWnd, RECT *rRect);
  295. void CopyRect(RECT *rR1, RECT *rR2);
  296. void InflateRect(RECT *rRect, int iX, int iY);
  297. void SetRect(RECT *rRect, int x, int y, int w, int h);
  298.  
  299. void PostQuitMessage(int);
  300. int DefWindowProc(int, int, WORD, LONG);
  301. void DestroyWindow(HWND);
  302. long GetWindowLong(int, int);
  303. void SetWindowLong(int, int, long);
  304. HPEN CreatePen(int, int, int);
  305. HBRUSH CreateSolidBrush(int);
  306. HFONT CreateFont(int, int, int, int, int, int, int, int, int, int, int, int, int, char *);
  307. HDC CreateCompatibleDC(HDC);
  308. HBITMAP CreateCompatibleBitmap(HDC, int, int);
  309. int SelectObject(HDC, int);
  310. void SetBkMode(HDC, int);
  311. void SetTextColor(HDC, int);
  312. void SetPixel(HDC, int, int, int);
  313. void BeginPaint(HWND, void *);
  314. void FillRect(HDC, RECT *, int);
  315. void Rectangle(HDC, int, int, int, int);
  316. void BitBlt(HDC, ...);
  317. void ReleaseDC(HWND, HDC);
  318. void DeleteDC(HDC);
  319. HMENU GetSubMenu(HMENU, int);
  320. HMENU GetMenu(HWND);
  321. void IntersectClipRect(HDC, int, int, int, int);
  322. void MoveToEx(HDC, int, int, int);
  323. void LineTo(HDC, int, int);
  324. void Ellipse(HDC, int, int, int, int);
  325. void SelectClipRgn(HDC, int);
  326. void ExtTextOut(HDC, int, int, int, int, char *, int, int);
  327. void EndPaint(HWND, PAINTSTRUCT *);
  328. BOOL PtInRect(RECT *, POINT);
  329. void ClientToScreen(HWND, POINT *);
  330. void ClipCursor(RECT *);
  331. void TrackPopupMenu(HMENU, int, int, int, int, HWND, int);
  332. void MoveWindow(HWND, int, int, int, int, int);
  333. int GetDeviceCaps(HDC, int);
  334. void CheckMenuItem(HMENU, int, int);
  335. int DialogBox(HINSTANCE, LPCTSTR, HWND, void *);
  336. int DialogBoxParam(HINSTANCE, LPCTSTR, HWND, void *, LPARAM);
  337. void D3DXCreateBox(LPDIRECT3DDEVICE7, float, float, float, int, void *);
  338. void D3DXCreateCylinder(LPDIRECT3DDEVICE7, float, float, float, int, int, int, void *);
  339. void D3DXCreateTorus(LPDIRECT3DDEVICE7, float, float, int, int, int, void *);
  340. void D3DXCreatePolygon(LPDIRECT3DDEVICE7, float, int, int, void *);
  341. void D3DXCreateSphere(LPDIRECT3DDEVICE7, float, float, float, int, void *);
  342. void D3DXCreateTeapot(LPDIRECT3DDEVICE7, int, void *);
  343. void ShowWindow(HWND, int);
  344. DWORD GetTickCount(void);
  345. #include "d3dtypes.h"
  346. #include <ctype.h>
  347.  
  348. #endif
  349.